'use strict'

define(['jquery', 'datetimepicker','bootstrap', 'select2', 'shiftform', 'validate', 'validate.en', 'uploader', 'plupload', 'qiniu'], function($) {
    return {
        init : function(data) {
            this.initUpload(data.apiHost);
        },

        initUpload: function(apiHost) {
            $(document).on('shown.bs.modal', '#picture-edit', function(e){
            	$.ajax({
                    url: apiHost + "/api/qiniu/token",
                    jsonp: "callback",
                    dataType: "jsonp",
                    success: function( response ) {
                      var uploaderCover = Qiniu.uploader({
                        runtimes: 'html5,flash,html4',
                        browse_button: 'pickCover',
                        uptoken: response.uptoken,
                        domain: 'http://qiniu.test.fita-club.com',
                        max_file_size: '4mb',
                        max_retries: 3,
                        chunk_size: '2mb',
                        save_key: true,
                        auto_start: true,
                        init: {
                          'UploadProgress': function(up, file) {
                        	  $('#messageCover').removeClass("hide");
                              $(".edit-btn").addClass("hide").prop("disabled", true);
                              $('#messageCover').html("正在上传图片，请稍后");
                              $('#submitBtn').attr("disabled", "disabled");
                          },
                          'FileUploaded': function(up, file, info) {
                        	  var res = $.parseJSON(info);
                              var cover_box = '';
                              $('#coverPreview').attr("src", window.__CTX__.cloudDomain + "/" + res.key);
                              $('#coverPreviewList').css("display", "block");
                              $('#cover').val(res.key);
                              $('#messageCover').html("加载图片完成");
                              setTimeout(function() {
                                $('#messageCover').addClass("hide");
                                $(".edit-btn").addClass("fade").removeClass("hide").prop("disabled", false).html("<span class='glyphicon glyphicon-repeat' aria-hidden='true'></span>&nbsp;&nbsp;重新上传");
                              }, 2000);
                              $('#submitBtn').removeAttr('disabled');
                            },
                          'Error': function(up, err, errTip) {
                        	  $('#messageCover').html("图片上传异常，请稍后重试");
                          }
                        }
                      });
                    }
                  });
                $(document).find('form[data-validate="true"]').bt_validate()  //bind validate
                
                var $form = $(document).find("form")                          //bind shiftform
                $form.shiftform({
                  beforeSubmit : function(el) {
                    $form.trigger("validate.ajax.submit");
                    return $.bt_validate.result[$.bt_validate.form_id]
                  }
                })
            });
              
          } //initUpload
    }
})
